Complex event processing (CEP) combines the concepts of stateful processing across multiple events, stateless processing, temporal reasoning, event organization into contexts that may partition event streams, and semantic policies that specify directives for inclusion and ordering of events within the reasoning process. By way of example, such policies can include a consumption policy, should events already matched to a complex event get reused for other matching, as well as a repeated type policy, given multiple events of the same type, should first or last or all events be used for matching.
Capturing such items in a controlled natural language (CNL) requires vocabulary concepts that formalize them. Existing approaches include the use of graphical editors that do not parse textual input and also produce output that merely appears similar to natural language, but instead is forms-based, not text. In contrast to existing approaches, the interaction among these concepts should be designed both to support CEP rules and to make them understandable to users in CNL statements. Also, the formalization should enable the conversion of the CNL statements to the CEP implementation, and the formalization should avoid duplication of concepts but may use synonyms to provide alternative terms for the same concepts.